﻿using KayakMes.Common.Dtos.ProcessDTO.Input;
using KayakMes.Common.Dtos.ProcessDTO.Output;
using KayakMes.Common.Result;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace KayakMes.ProcessManagement.Application.Process
{
    public interface ITechnologicalFlowService
    {
        /// <summary>
        /// 新增工艺信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        ApiResult<int> Add(TechnologicalFlowInput input);

        /// <summary>
        /// 查询工艺信息列表
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        ApiPaging<TechnologicalFlowOutput> GetTechnologicalFlowList(GetTechnologicalFlowInput input);

        /// <summary>
        /// 通过Id查询工艺信息
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        ApiResult<TechnologicalFlowOutput> FindTechnologicalFlow(long id);

        /// <summary>
        /// 根据Id删除工艺流程信息
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        ApiResult<int> DeleteTechnologicalFlow(long id);

        /// <summary>
        /// 修改工艺流程信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        ApiResult<int> UpdateTechnologicalFlow(TechnologicalFlowOutput output);
    }
}
